﻿//========================================
// All rights reserved (C) 2017-2100
// CLR 版本：	4.0.30319.42000
// 命名空间:	Common
// 文 件 名：	GetMD5
// 作    者：	WooG
// 联系方式：	wooglle@163.com
// 创建时间：	2018/3/12 22:41:43
//========================================
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

namespace Common
{
    public class GetMD5
    {
        public static string GetMD5FromFile(string fileName)
        {
            try
            {
                FileStream file = new FileStream(fileName, System.IO.FileMode.Open);
                MD5 md5 = new MD5CryptoServiceProvider();
                byte[] retVal = md5.ComputeHash(file);
                file.Close();
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < retVal.Length; i++)
                {
                    sb.Append(retVal[i].ToString("x2"));
                }
                return sb.ToString();
            }
            catch (Exception ex)
            {
                throw new Exception("GetMD5FromFile() fail,error:" + ex.Message);
            }
        }
    }
}
